Contents

Contents - KPT Convolver  EXPLORER'S GUIDE ONLINE

A Letter From The President Foreword From Kai Krause GETTING STARTED System Requirements Installation ABOUT CONVOLVER Modes and Presets Subsampling Previewing and Panning Reselecting Sample About the Interface Keyboard Commands EXPLORE MODE Mutate Genes Genetic Diversity Gene Influences DESIGN MODE Axis Parameters and Poles Axis Arrows Bracketing & Scrubbing	TWEAK MODE The Rules Reset To Normal, Effect Intensity Blur, Sharpen Edges Amount, Edges Angle Relief Amount, Relief Angle Hue Rotate, Saturation Brightness, Tint Fade to Grey, Color Contrast TWEAK SUB-MODES Linear Convolution Unsharp/Gaussian Gaussian, Unsharp, Radius Threshold Difference Mask Options Ben Weiss on Convolution Kernels Acknowledgements


Letter From The President

Imaging Aficionados:

Our continued drive to bring you the best in advanced imaging technology has spawned KPT Convolver. Convolver is short for Convolution Kernel Explorer. If you are not yet familiar with the convolution kernel, simply put, it is the mathematical 3D space where all sharpens, blurs, posterizes, relief/embosses and other visual computing effects reside. Why a product that focuses on the Convolution Kernel? Those of you who have touched the "custom" filters in Photoshop or other apps have found the implementation of this very powerful area of image processing, for a lack of a better word, wanting. Further, in researching the use of the convolution kernel for an article to be written for a major publication, Kai realized that no one had ever designed a way to navigate this mathematical space.

Never again will you be stuck with the limited options of one sharpen and sharpen more, or blur and blur more. KPT Convolver provides an unlimited set of sharpens, blurs, embosses etc. that are completely customizable to specific images! Better yet, you now have a vast new space of image manipulation techniques never before available. You will find KPT Convolver to be a serious production tool that provides you with new degrees of creative freedom.

KPT Convolver provides you with Kai's advanced user interface and a whole new way of creating new imaging solutions. KPT Convolver is the visual way to explore the infinite possibilities that the convolution kernel offers without requiring you to trudge through an endless series of ugly matrices that may be empirical in nature, but with which it is very difficult to attain meaningful results.

Kai's expansion of the inherent power of the convolution kernel to include both color- and spatial-based kernels as well as a host of other features provides, as one of our beta sites said, "the next generation of Digital Dreams!"

Our team at HSC continues to explore new ways of expanding your visual computing horizons. We trust that you will find the journey exciting and fruitful. Thank you for your continued encouragement and support.

Sincerely,

John Wilczak

Chairman and CEO


Note In C-Sharpen From Kai Krause

So what IS this thing? That is a question that will be asked a lot; it has no single answer. First of all, the Convolver wears two hats: Corrective and Creative.

Corrective

The first is fixing up and sharpening, color correcting and playing with contrast, shifting hues, removing haze, increasing saturation, and several other operations which have been found in separate dialogs in all other apps so far. All are part of the eternal quest to bring out the best image possible, at its sharpest and with the best colors.

Bring out the fine lines in hair; make minute text fragments legible; be the first to interpret the Shroud of Turin; find volcanoes on Io in Hubble photographs, or just repair that out of focus baby picture.

Within reason, of course. If the information isn't in there, we cant make it up out of thin air! Often times, however, it is in there, just not easily visible.

Creative

The second way to look at Convolver, though, is as a very powerful set of controls with which to creatively mess with your image; to have special effects emerge in subtle or outright gross ways.

Huge embossing relief with simultaneous contrast shift while tinting a delicate new shade of sepia. Clouds can become marble; wood can become wild streaks on alabaster; skin can look like a mud mask.

Pro and Convolver

Don't let the interface (and our having a little bit of fun!) deter you, though. There is significant bread-and-butter, nose-to-the-grindstone, ho-hum, day-to-day working tool stuff in there (beep! metaphor warning...).

Seriously, we have tried to focus on that simple, hammer-and-saw-like daily use factor, though perhaps in the guise of having a fun time exploring your image. At the same time, I see no reason why spending hours in this thing shouldn't also "feel" happy.

Yes, there will be the contingent of naysayers who will cling to "standards" so much that the mere absence of the System font and 1-bit jaggy radio buttons will make it seem "less professional" to them. That's a shame, but we'll live with it. On the upside, if this causes the newcomers among us to tinker more and spend a little longer than ever before playing with image details merely because they feel it's fun at the same time... well, then it worked. Because I am convinced that the space of possibilities here is enormous.

Details, Schmetails

In every image, there lurks a myriad of alternative versions and varying degrees of any number of parameters. We always knew implicitly that changing the hue alone can give you dozens of variations of a single image. With the addition of a few settings of contrast, and a few of sharpness etc. etc., the possibilities multiply exponentially. And many such processing techniques are very subtle.

We have now added a few completely new twists. Take sharpening edges in individual degrees of direction: there are "sub-pictures" hidden inside every image in which each direction comes out emphasized. Fine lines at 35 degrees at one setting may totally vanish, to be replaced by others popping out at 55 degrees. You can at the same time do a relief emboss at 120 degrees, while blurring a bit, tinting, and so on.

"Finding out what these hidden, implied 'sub-pictures' look like is the Sherlockian quest of KPT Convolver..."

Kai


Getting Started

Terms used in this Explorer's Guide

This Explorer's Guide assumes that you're already familiar with basic MS Windows 3.1 Operating System functions. If you are not, please refer to your Windows Users Guide.

We have focused our discussion of KPT Convolver on Adobe Photoshop™. The general discussion of KPT Convolver features and functions should help you no matter which application you are using as a host.

When we refer to a hierarchical popup menu, we will say: Menu Item > Pulldown Item > Hierarchical Item. In the Sample shown (see figure 2 in manual), this would read File> Preferences> Plug-ins.


Minimum System Requirements

System: KPT Convolver requires MS Windows 3.1 or later.

CPU: KPT Convolver will run on any IBM PC or compatible 386, 486, Pentium, PS/2 or greater, that has a floating point unit (math coprocessor) and adequate RAM.

Host: KPT Convolver is a plug-in, and therefore a "host program" is also required. Convolver has been optimized for professional use, and therefore will run best within Adobe Photoshop™ or Fractal Design Painter™. Check your favorite paint program's manual for information regarding Plug-in compatibility. Be sure to check out our Read Me files for the latest info we can provide.

RAM: KPT Convolver requires 2.5 MB RAM (Random Access Memory). 3MB of RAM is required to access the Unsharp/Gaussian mode. Be sure to allow RAM not only for your host program, but for your system as well. MS Windows 3.1 can easily consume 4MB on its own.

Recommended: A color monitor is highly recommended; and while KPT Convolver will work in 8-bit color, it is best to use a 24-bit color card. Also recommended is either a 486 or Pentium processor.


Installation

Convolver is not a standalone application. It does not create a program group or icon that lets you launch the program from inside Windows. Convolver is a plug-in filter that supports the Adobe plug-in architecture. Therefore, there is no simple one size fits all installation. Running the setup routine on the distribution diskettes does not automatically make the changes necessary to use Convolver . There are specific instructions depending on which program(s) you are using and how and where you prefer to have the Convolver files installed.

For the latest installation documentation, please refer to the "KPT Convolver Installation Readme" help file found in the KPT Convolver Program Group. This help file contains the latest information on how to install Convolver with many different plug-in host applications.


About Convolver

"...Convolver adds some totally new twists to image processing, such as directional sharpening and depth relief in realtime. The more subtle benefit, however, is the presentation of many controls which typically have been scattered throughout multiple dialogs, together in a single environment . One can simply explore a much larger variety of potential variations of a picture in a single session.

The interface is a mixture of some fun ideas and some pretty profound ones. No, I don't want to turn the whole interface into a spaceship with little spheres...that's not what I consider the interface to be all about. I always think of it as hiding complexity and presenting the user with a set of choices that work well together. Making it so seemingly simple-minded fun is actually quite tricky..."

Kai


Modes and Presets

To begin exploring KPT Convolver, first launch your host program; open an image of your choice, and open the Convolver. If you are working with a larger file, you will see a message indicating the Convolver is subsampling your image.

Note: Convolver will work on greyscale, RGB and CMYK images. It will not work in other color models, such as LAB.

KPT Convolver Mode Buttons

The KPT Convolver has three modes, each with its own special purpose...

Explore mode is just that, exploration, with no map or guide towards a particular result. Explore mode simply offers random mutations of kernels, with control over how extreme those mutations are. To activate this mode, either click on the button or press the "E" key.

Design mode offers a similar exploration of convolutions, with a twist: instead of randomly generating 15 kernels in the grid, the grid is seen now as an axis. Along the left side, one effect (such as Sharpen) is expressed in varying degrees. Along the right side, another. The tiles in the middle express the gradual combinations of the two axes. If this sounds confusing, don't even worry about it. You'll see very quickly... To activate this mode, either click on the button or press the "D" key.

Tweak mode allows discrete control over each underlying parameter, with results previewed in realtime. Within this mode are three "sub-modes:" Linear Convolution, Gaussian/Unsharp, and Difference Mask. To activate Tweak mode, either click on the Tweak button or press the "T" key. To choose the sub-mode, click and hold on the Tweak button and select from the pulldown menu.

Momentary Display/Preset Menu

This area is used to momentarily display information about processes in progress, numeric readouts, or preset names.

You may call up a preset from the Presets Menu by clicking in the vicinity of the tiny triangle there, and choosing from the list. You will see an item that allows you to save presets; to delete presets, press the CTRL key while selecting a preset.

You will not, however, find a plethora of presets as useful as you might have with textures or gradients. That's because you really are making up a snug fit special case every time, fresh for every image: What looks like thick lava ooze in one picture will look absolutely nothing like that in the next. This is not a problem, it is in fact a description of the whole idea behind Convolver!


Subsampling

When you open KPT Convolver, it looks at your entire image and creates a small internal replica for later use; if you are working on a large image, this may take some time. If you like, you can abort the subsampling process by clicking anywhere on your screen. See the next section on the Grid/Preview Diamond to find out how this subsampled image will be useful to you.


Previewing and Panning

Current Kernel Tile

Occupying the topmost point of the Convolver interface, here you will see the current effect as it will appear when applied to your image.

Grid/Preview Diamond

This area is used both as a grid comprised of fifteen small tiles, and as a fullsized preview.

At any time, you may click in the Current Kernel Tile and all fifteen variation tiles will be replaced by the full preview. The next three subsections assume you are in full-preview mode.

What You Are Seeing

The full preview is a one-to-one sample of your image/selection, initially taken from the center outwards. This means that the effect you see here is precisely what you will get when it is applied.

In the Current Kernel Tile above, you are seeing a small tile extracted from this larger sample. To reposition this extracted sample, click anywhere in the large preview; the point below your cursor becomes the center of the updated Current Kernel Tile. Adjust further by dragging.

Panning

For a quick "pan" to reposition the portion of your image displayed in the full preview, Control-drag in the full preview. You will see the small, subsampled version of your image panning in the Current Kernel Tile area above; drag until it represents what you'd like to see in the full preview window. When you release, Convolver will update the full preview with the new selection. This method is for quick adjustments of smaller images; the following method is more precise, especially with very large files.


Reselecting Sample

Reselecting

For real precision, or to reselect the one-to-one preview for an excessively large image, Control-drag in the full preview area or select "Reselect Sample…" from the Options menu. This provides an instant view of the entire subsampled image, with a diamond shaped picker when you press the mouse. The picker is custom-scaled for each image, allowing you to precisely and quickly reselect your one-to-one preview. When you release the mouse, you will return to the main Convolver.


About the Interface

Standards?

You will notice similarities between the Convolver and our other user-interfaced filters, the Texture Explorer, Gradient Designer, Gradients on Paths, and the Fractal Explorer. These KPT "standards" (is that what they mean by irony?) are worth noting here:

Sleeping Buttons

KPT filters have always had sleeping buttons. That is, the buttons you are not using "go to sleep," fade out; they are just visible enough for reference, but faint enough not to distract you. If you want to use a button that is sleeping, a single click will wake it up.

With Convolver, we have taken this a step further; each of the three modes, Explore, Design, and Tweak, along with its controls, will sleep while any one is awake. So while you are in Design mode, its arrows and functions are available, while the lower left corner Explore buttons and all the Tweak controls are gently snoozing. A click on the Mutation button will awaken the Explore mode, and the Design arrows go away, since there is no logical reason to see them. In this way, they can all harmoniously live together without having to switch layers or dialogs or palettes.

Blackout Shell

To dedicate the screen to the filter environment, press the space bar as you open the filter. This will black out the entire screen behind the Convolver, much like Photoshop's full-screen slide display mode.

A Moving Interface

The filter can be moved around your monitor by clicking and dragging on the title bar, or almost anywhere that your click doesn't trigger some other action.

Less Can Be More

Clicking on the Kai logo (top left corner) will minimize the Convolver's interface into a very small patch, allowing you to view your underlying image. You can drag this patch anywhere you like; another click will bring it all back.

Options

The Options menu, found in the upper right-hand corner of all KPT filters, offers different modes of behavior as well as the ability to load various sample images. More about the individual items in this menu later.


Keyboard Commands

KPT Convolver is riddled with keyboard shortcuts, the most important of which are the most obvious: Escape or ALT-F4 will exit the Convolver without accepting any changes, and either the Return or Enter key will accept changes, exit the filter, and apply the effect to your image. Both of these shortcuts are analogous to the Cancel (slashed circle) and OK (checkmark) buttons in the lower right-hand corner.

Convolver also has virtually unlimited Undo CTRL-Z., try it: you can step backwards at least 200 times! Then, of course, you can either go on from any of those points or use CTRL-R (redo) to step back forward again. Very handy, do remember it.

E	Explore Mode

D	Design Mode

T 	Tweak Mode

Escape/ALT-F4	Cancel Convolver

Return/Enter	Apply Effect

CTRL-Z 	Undo

CTRL-R	Redo

CTRL-P	Preferences

CTRL-K	Kernel Matrices

CTRL-N	Reset To Normal

CTRL-C	Comparison Grid


Explore Mode

"...Random mutation is a great way to let the process surprise you, to set things up in ways that you never would consciously since they might be counter-intuitive or downright nonsensical. And yet, it could be that it just happens to make that DOG look like a perfect ghostly apparition of GOD, or the other way around. Could be...

Explore Mode is great at this confrontation between highly unlikely, strange compounded effects..."

Kai

OK, first go to the Preset Menu and select Reset To Normal. Now, to activate Explore mode, either click the Explore button or type the letter "E." You will see that this modes controls consist of three yellow buttons along the bottom left-hand corner of the Convolver: Mutate Genes, Genetic Diversity, and Gene Influences. These controls are now awake for your mutation pleasure.


Mutate Genes

Click here and you will trigger fifteen new tiles generated clockwise around the grid, from the outside to the center. Each one of these tiles expresses a combination of effects, randomly mutated from the Current Kernel Tile at the top.

Much like its predecessor, the KPT Texture Explorer (early versions of the Convolver literally grafted the kernel convolutions in place of the texture calculations, just to see what happened!), you can click any tile in the grid and that tiles effect will be transferred to the Current Kernel Tile; this tile then becomes the new kernel from which the next fifteen mutation tile will be built. When the mutation tile is moved into the Current position, the Convolver immediately begins a new round of convolutions.


Genetic Diversity

The second Explore button, Genetic Diversity, dictates the intensity of the random convolutions. Clicking on this button will display 5 levels of intensity: Minimum, Minor, Medium, Major, and Maximum. These controls are analogous to the little spheres in the KPT Texture Explorer, which essentially are also intensity controls.

Simply stated, each setting will determine how much the Mutate Genes button scrambles the current kernel parameters. For example, set the Genetic Diversity to Minimum. When you click the Mutate Genes button, you will notice how little the fifteen new mutation tiles differ from the original. Now, change the Genetic Diversity setting to Maximum and continue with the Mutate Genes button. Notice how radically different these mutations are compared to the first set with the Minimum setting. Convolver defaults to Medium.

TIP: The Kernel Matrices

To really see this in action, go to the Options menu and select "View Kernel Matrices." Note the appearance of the numbers in the grid, and click "OK" to exit. Now, explore the different Genetic Diversity settings, selecting new convolutions and looking at their numeric expressions in the Kernel Matrices. You will notice significant differences in the numbers shown in the kernel window, both in value and placement, depending upon the Genetic Diversity settings you have chosen.


Gene Influences

(Gene Vincent? Gene Simmons? Gene Kelly?)

This last button toggles on and off specific parameters available for convolution.

While Explore mode is primarily for randomized exploration, it does afford you some control over just how "random" this exploration is, and which elements of the convolution are randomized.

Mutate All turns it all on.

Mutate None turns it all off. You will most likely use this feature prior to turning on only one or two effects.

The next two options will group mutation parameters for random mutation:

Texture Only turns on Blur/Sharpen. Embossing, and Edge Detection.

Color Only turns on Hue, Saturation, Brightness, Contrast, and Tinting.

Finally, you can selectively turn off or on each kernel convolution element, and make your "random" convolutions quite controlled.

One can have a very satisfying randomly mutated kind of experience just by selecting from these options, clicking on mutation tiles, and hitting Mutate Genes until you have calluses on your fingers.

Remember, too, that a click in the Current Kernel Preview will transform the fifteen-tile grid into a full-screen preview. While you are there, you can "point" to that portion of the large preview you would like displayed in the Current Kernel Tile; another click in the Current Kernel Tile will restore the grid with a fresh round of mutations.


Design Mode

"Design mode takes the old photographers' idea known as "bracketing" to the extreme. They will often shoot four or five pictures to over- and under-expose ("bracket") a subject with the hope that somewhere in there a usable version will be found.

In KPT Convolver, I have designed the diamond shape to have two equally weighted axes for such bracketing.

With a click-hold on the axis effect name (Sharpen, Relief+, and so on...), you can choose any effect you like from a pop-down diagonal menu to install any of the mathematical operations on either side.

For instance, having "Contrast" on the left side will take the current setting at the top and create three progressively more "contrasty" versions to the left. If you install "Saturation" on the right axis you get three more steps of "more color" towards the right direction. Altogether there are then fifteen variations plus the current setting being shown.

You can use the little arrows to vary how fast the stepping occurs. You can simply click once on the word, and flip to its polar opposite: If it says Sharpen, then with one click it switches to Blur. Contrast to Fade. And so on...

Kai

Now, either click the Design button or type the letter "D" to activate Design mode. You will see that this mode's controls consist of an arrow along each axis, and a corresponding label indicating a specific effect. The Explore mode is hibernating; the Design controls are now awake for your mutation pleasure. Sounds a bit naughty...


The Axis Parameters and Poles

Press on the effect named at the end of either arrow, and you will see a pull-down diagonal menu listing parameter options (for those with neck trouble, you may change to standard menus by going to Options menu>Preferences and selecting "Monochrome Design Menus"). There are a total of nine different options for each axis which can be installed by the user, and each one has two opposite settings, or poles, for a total of eighteen possible settings for each axis.

For example, Hue Rotate contains the polar pair of Hue Warmer and Hue Colder. Emboss contains Emboss+ and Emboss . With eighteen possible settings on each axis, 15 resulting tiles and ten degrees of intensity for each axis setting (more on that shortly), the possible combinations are mind-numbing; yet the control is incredibly precise.

These effects are essentially the same as those offered in Explore mode. In Design mode, they have been broken into logical pairs, affording you finer control over degrees of effect application:

Effect Level

Normalize/Intensify

Blur/Sharpen

Blur/Sharpen

Edge Detection

Edges+/Edges

Edge Angle

Edge Angle CW/Edge Angle CCW

Relief Amount

Relief+/Relief

Relief Angle

Relief Angle CW/Relief Angle CCW

Hue Rotation

Hue Warmer/Hue Colder

Saturation

Saturate/Desaturate

Brightness

Lighten/Darken

Contrast

Contrast/Fade

For more specific information about how each of these effects work internally, see "All the Marbles" at the end of the next chapter.


The Axis Arrows

The arrows on each of side of the grid not only indicate the direction of the effect, but also indicate the intensity of it. Now, you might not have noticed yet, but clicking and dragging on the arrows will increase or decrease their length (if you didn't catch this, you haven't been playing enough…). The length of the arrow indicates the degree to which that effect will be executed. For example, if you have one side of the axis set for "Relief +," but the arrow is retracted to its smallest setting, you wont see very much embossing occur. However, the same setting with the arrow stretched all the way out, will result in much more pronounced embossing.

Any change to the length of an arrow will result in a new mutation cycle, with the tiles along the left axis expressing degrees of its designated effect; the tiles along the right axis expressing degrees of its designated effect, and the tiles in between representing combinations of the two.


Bracketing & Scrubbing

TIP: Bracketing

Install an effect, such as Darken, on the left side of the grid. Click the far left small diamond; that becomes the current choice, and it becomes so much more "left-like," i.e. darker. If its too dark, simply click once on Darken, and it switches to Lighten. Install another effect on the right side, such as Hue Warmer.

Set both arrows fairly short; this results in smaller "step-sizes." Then use only the far left and far right diamonds to create minute changes. Ultimately, you can then get close to your perfect effect setting.

This bracketing technique is very useful to gauge small differences in one glance; especially on slower machines. It is an excellent way to compare fifteen settings of Relief Angle, or fade out color and contrast altogether, or rotate the hue while also rotating sharp edge angles.

TIP: Scrubbing

Any of the small diamonds shown in Explore or Design mode can be linearly interpolated towards the current chosen setting. So, if the top diamond is sharp and with relief, and the far bottom one is blurry and flat, then a drag on the lower one will smoothly interpolate in realtime between these two settings, and when you let go that becomes the new Current choice.

If you think about the mathematics a bit, this is much trickier than it sounds: examine the numeric fields in the convolution matrix ("View Kernel Matrices," under the Options menu; displayed in a simple manner akin to Photoshop's Custom filter) and ask yourself how one would enter numbers to vary embossing in degrees and "scrub" that towards edge sharpness at a different angle... yikes!


Tweak Mode

"...When you want to fiddle with individual controls, to give your image that tiny nudge, then you want the third mode.

Tweak. Literally. Any one thing, or combinations of things. Click, drag, and see your changes update in realtime. A bit of blur, tad of tint, slip of sharpness, or a hint of hue. Forwards and backwards. Twiddle the knobs and behold the changes.

This is precise control over each parameter, so you are likely fairly clear on what happens. This is the mode for corrective or creative work when you know exactly where you want to go..."

Kai

So, you've shuffled the pixel deck in Explore Mode and found something you like. You took that setting into the Design Mode and adjusted a couple of effects until you found a tile with almost just the right combination of elements, but it's not quite right. You need to nudge the brightness or sharpness just a tad. Tweak it, so to speak.

In Tweak Mode, you've got each effect  as its own individual "marble" control along the right side of the interface. Each one of those marbles represents a particular control that you can now tweak as precisely as need be. Suppose you want to emboss your image a bit more; simply drag the Relief marble, and youll watch your preview window give you a real-time look at the amount of relief you're applying. No guessing.


The Rules

There are three "sub-modes" within Tweak Mode: Linear Convolution (default mode), Gaussian/Unsharp, and Difference Mask. Before we look at each Tweak sub-mode individually, there are three basic rules to learn…

Rule One

Drag to the right to increase the effect; drag to the left to decrease it. Since every rule needs an exception, we've built one in: The Tint marble works in a circular manner. More on this control and other idiosyncratic things after we learn Rules Two and Three.

Rule Two

Double-clicking any marble will return that effect to its original state (no effect).

Rule Three

Don't get too hung up on the numeric readouts.

The numeric readout is not meant to be used for "settings" per se.

The reason the numbers cannot be as important in this context is this: All effects are interdependent, and have different ranges as well. For instance, Blur and Sharpen are in fact the opposite of one another; to blur is to sharpen negatively. So if you change a "setting" for Blur, internally the Sharpen setting is changed as well, in the opposite direction. You would return to Sharpen to find a completely different setting! Moreover, depending on active effects, you can be dynamically changing values internally for many effects at once. Blurring may also change Edge and Emboss values, and possibly others. Combine this with the various clipping ranges for each effect, and the concepts of  "settings" and numerical entry fly right out the window.

So, use these controls in an almost "analog" sense: move the slider from nothing yet, to too much, and then back again, and up, and down, and THERE, you got it! Iteratively, and without caring in the least what the numbers actually might be. You can now do it like adjusting the volume on the radio: from too quiet to too loud to "just right," rather than setting it to 169 because somebody somewhere gave us the notion of 0-255 binary having a deeper magical meaning...


Reset To Normal, Effect Intensity

Reset to Normal

Clicking this marble resets all effect values to zero.

Effect Intensity

Imagine that each Tweak control is a slider in a console containing many such sliders, like a recording studio's mixing board. One slider may be set to 3, another to -37, another to 4092.

Dragging to the left on this marble will essentially divide each slider's setting by the same value, and linearly interpolate every active kernel back to zero at the same time! This is very handy when you have a complex effect which you like, but is too strong; you can back the intensity down without disturbing the balance of the relationships between the "sliders."

Conversely, you can drag to the right and amplify the effect until your image appears completely destroyed. Drag left to gradually return the effect to zero.


Blur, Sharpen

Blur

A 3x3 blur kernel will take each pixel in your image and average it with each of its eight neighbors, resulting in a softer image. Drag right to blur. Because it is a 3x3 pixel grid, the blur clips at a low-level setting. For more extreme blurs, see the upcoming section on the Unsharp/Gaussian mode….

Sharpen

Sharpen, being the polar opposite of Blur, will enhance contrasts of any kind (brightness, hue, etc.) between the center pixel and its eight neighbors. Unlike Blur, there is a great deal of effect available here; you can sharpen your image until it is completely unrecognizable! Since all changes are algorithmic, you can either unsharpen with this control or blur with the Blur control to gradually undo the effect.


Edges Amount, Edges Angle

Edges Amount

This operation is very similar to Sharpen. It also compares each pixel with each of its eight neighbors, and enhances contrasts; the difference is that it responds along an axis (determined by the Edges Angle, described below). Whichever of the eight neighbors fall on or near the axis will receive the lion's share of the sharpening effect; the others will be sharpened less.

Therefore, Edges Amount performs a kind of directional sharpening. This is very interesting when combined with Relief to bring out incredibly fine detail from hand prints, hair, and surfaces of distant planets.

Edges Angle

This adjusts the angle of the directional sharpen. Remember that this button will have no effect if Edges Amount is not in use. Though the readout indicates 360 degrees, the appropriate mouse movement is horizontal.


Relief Amount, Relief Angle

Relief Amount

This is the Embossing kernel. Drag for increased or decreased relief effects.

Embossing interprets the luminosity values in your image as a kind of greyscale-to-height map (see KPT Bryce...!) with brighter values being higher, and darker values being lower. This control determines how exaggerated this effect will be.

Relief Angle

This adjusts the angle of the embossing, or in a sense, the direction from which the light is hitting the height-map. Remember that this button will have no effect if Relief Amount is not in use. Though the readout indicates 360 degrees, the appropriate mouse movement is horizontal.

This, too, is quite interesting when used to bring out detail in images. Unlike other emboss functions you may have used, this kernel preserves color information! Try embossing a KPT Texture with this...


Hue Rotate, Saturation

Hue Rotate

Dragging right or left on this control will simultaneously rotate each pixel in your image through a virtual color wheel.

Saturation

Increases or decreases the intensity of color values in your image.


Brightness, Tint

Brightness

Adds or subtracts white to or from each pixels color values, resulting in a brighter or a darker image depending on which way you drag.

Tint

This is actually an algorithmic color picker. Rather than responding to a horizontal drag of the mouse like the other controls, you should drag around the marble to choose a color value to add to every pixel in your image; circle closer to the marble for low intensity, or further away for deeper intensity.


Fade to Grey, Color Contrast

Fade To Grey

A drag to the right linearly interpolates every value of every effect within your current kernel towards a flat grey. Obviously, this removes any color components from your image in the process. You may drag to the left to restore color values, and further to intensify them.

Color Contrast

A drag to the right will intensify color contrast, almost to the point of posterization if you go overboard. Better is a subtle adjustment to the right; often this has the effect of removing a layer of "soapy scum" from your image which you only then will notice as having been there. This feature, in conjunction with some minor tweaks to Brightness, Saturation, and others can approximate the results of our KPT Sharpen Intensity filter.

Interesting, too, is the fact that this tool always assumes that your current combination of effects is of 100% "color contrast value." If you decrease towards zero, you can get flat grey, just like the Fade to Grey marble. However, continue to drag left and you can venture into negative values, incrementally inverting your color space!


Tweak Sub - Modes

"...When you want to fiddle with individual controls, to give your image that tiny nudge, then you want the third mode.

Tweak. Literally. Any one thing, or combinations of things. Click, drag, and see your changes update in realtime. A bit of blur, tad of tint, slip of sharpness, or a hint of hue. Forwards and backwards. Twiddle the knobs and behold the changes.

This is precise control over each parameter, so you are likely fairly clear on what happens. This is the mode for corrective or creative work when you know exactly where you want to go..."

Kai

So, you've shuffled the pixel deck in Explore Mode and found something you like. You took that setting into the Design Mode and adjusted a couple of effects until you found a tile with almost just the right combination of elements, but it's not quite right. You need to nudge the brightness or sharpness just a tad. Tweak it, so to speak.

In Tweak Mode, you've got each effect  as its own individual "marble" control along the right side of the interface. Each one of those marbles represents a particular control that you can now tweak as precisely as need be. Suppose you want to emboss your image a bit more; simply drag the Relief marble, and youll watch your preview window give you a real-time look at the amount of relief you're applying. No guessing.


Linear Convolution

Linear Convolution is the default setting for Tweak mode. All the marbles discussed in the preceding section are available in this sub-mode, and you may jump freely between Tweak, Explore and Design modes with Linear Convolution selected.


Unsharp/Gaussian

This is a special Tweak mode, which enables you to explore Gaussian blurring and Unsharp Masking in real time. This mode is a special case state, and is meant to be used on its own; therefore a return to Design or Explore mode will disable the Gaussian/Unsharp functions until you return to Tweak>Gaussian/Unsharp mode. These operations are a bit more computation-intensive, so you will notice a delay compared to Linear Convolution operations.


Gaussian, Unsharp, Radius

Gaussian

The Gaussian Blurring feature enables you to create large scale blurs rapidly, when you find the 3x3 Linear Convolution kernel too limited for your purposes.

When you want a large scale blur, select Gaussian/Unsharp from the Tweak button menu. You will notice some new Tweak marbles; others will go to sleep.

Set a radius from 1 to 64 pixels for your blur using the Radius marble; then set the blur amount with the Blur marble, from 0 to 100 percent. You will see realtime blurring in the Current Kernel preview tile followed by an update of the large preview diamond.

Unsharp

Unsharp Masking is a very powerful technique which provides smooth, controlled Gaussian sharpening without pixellating your image to death; it works by increasing contrast with respect to the average brightness level of a given area. This has been a secret weapon of imaging professionals for some time, and can now be mastered much more efficiently with KPT Convolver. See the TIP next page…

Radius

The Radius marble is used in conjunction with both the Gaussian and Unsharp marbles. In the context of Unsharp masking, the Radius marble controls the size of the area used to find an "average" brightness, while the Unsharp marble controls the amount of contrast applied to each pixel.


Threshold

 Threshold specifies a level of contrast below which no sharpness is applied: using a large threshold value allows the filter to only sharpen areas that are already relatively sharp, similar to Photoshop's "Sharpen Edges" filter. using a low threshold value will allow more of the image to be sharpened. Threshold is relevant only to Unsharp Masking; it will have no effect with Gaussian Blurring.

TIP: UNSHARPMASKING

If you are new to Unsharp Masking, try the following: open an image, such as a portrait,  that has smooth areas (skin) as well as highlights and sharp areas (hair and eyelashes).

Enter Unsharp/Gaussian mode via the Tweak  Button menu, and drag the Unsharp marble to the right until you see noticeable sharpening.

Drag the Radius marble to the right to get a feel for how different radius settings affect the sharpening effect. Choose a setting that suits you.

Now, drag the Threshold marble to the right; this has the net effect of adding low frequencies (smooth areas) back into your image. Notice that higher settings leave only the sharpest areas in your image affected, and lower settings affect more of your image.


Difference Mask

This is also purely a Tweak sub-mode; if you jump to Design or Explore, you will no longer be in the Difference Mask. There are no new controls here, though some previously available controls will go to sleep when the sub-mode is active.

What is happening here is that the Convolver is taking the current spatial kernel and comparing it with your original image; once it determines the mathematical relationships between the two, it executes something similar to a "Difference" channel operation (see Kai's Power Tips or the Adobe Photoshop Handbook for more on Channel Operations).

The results can be strikingly beautiful. This effect requires some initial enhancement such as Embossing or Sharpening; otherwise, your image will appear completely black.

Try applying a Gaussian blur to your image before you enter Difference Mask sub-mode, and see what hidden things emerge!


Options

"...You will soon discover, or already have discovered, the little stars and their behavior. This might at first seem to be a mere gimmicky bit of fun, but give it a chance!

Here is the idea: when you first come in, there is nothing there. As soon as we see that you actually use this thing a bit, you get your first star, PINNGG! and a dialog pops up. You also see that there are four more.

Then, as you go forward and you adjust a bunch of parameters we decide that its time to make that a little easier for you and with the second star you get an actual new feature: a quick way to toggle a side-by-side comparison before and after with a split screen in the diamond window. Neat! Useful!

In that same vein, the whole idea is that you first have one screwdriver. Once we see that you have used it a lot and are screwing around, so to speak, all the time, then PINNGG! you get a set of three dozen screwdrivers, Phillips and normal, metric and kanji. Now that will be a solution for your problems, and an answer to your question! If you see all of these things right off the bat, it would be just so much visual clutter and confusion.

An Interface that is soft and happy (a rubber-lined room in which you can't hurt yourself) for the novice or casual user, and yet reveals itself to the professional and experienced user is something that really appeals to me, and makes a lot of sense. This is our first very small attempt at such a process and we hope that you enjoy it a little and have fun with the extra functions that come with the 3rd, 4th, and 5th stars..."

Kai

In the upper right-hand corner of the Convolver you can access the Options menu by clicking on the eponymous, euphoneously appellated icon (click the word "Options"...). This menu contains a number of things you will find useful and enjoyable.

About KPT Convolver…

Select this menu item for an in-depth, though informal, discussion of Convolver
history, technology, concepts and tips by Kai Krause.

Preferences…

This option allows you to customize aspects of KPT Convolver's behavior to your liking.

Return To Previous State

With this checkbox selected, Convolver will always open with your last used kernel active. Otherwise, it will open to the normal default (all settings at zero). This is true between as well as within sessions.

Monochromatic Design Menus

If this preference is selected, standard vertical black and white popup menus in 12-point Chicago will replace the diagonals. This is especially helpful on slower machines, as these "standard" menus pop up much faster.

Virtual Mouse

Convolver allows you to tweak controls without "bumping" into the edge of the screen. Notice that as you click on a Tweak marble, the cursor disappears and you can continue to drag as long as you like.

However, this can cause conflicts with some tablets; therefore you may turn the Virtual Mouse handling off by deselecting this item.

View Kernel Matrices…

This simply allows you to view the numerical values in the Kernel Matrices, if for no other reason than to say to yourself, "Man, I never would have typed in those numbers in a million years..."

Comparison Grid Overlay

The Comparison Grid Overlay is a grid-viewing option for use in Explore and Design modes: It overlays the grid frame onto the full preview image, and then applies the kernel mutations to the tiles individually, rather than repeating a single small sample around the entire grid. See the illustration on the facing page.

Reselect Sample…

Select this menu item when you want to display a different portion of your selection in the large preview diamond. The Convolver will momentarily display a subsampled version of your image or selection; click the mouse to get a diamond shaped marquee; drag to select a different area; release the mouse to return to the Convolver.

Current Selection et al

There are six images available as sample images. These images, Radial Mineral, Clouds, Cool Car, Text Sample, Palm of Hand, and License Plate are for you to experiment and explore the intricacies of Convolver without having to load an image of your own. They are contained in either the CONVO16.IMG or CONVO32.IMG file which is installed in your Windows directory.

These sample files may be chosen under the Options menu just below "Current Selection." To get back to the image you were originally working on, choose "Current Selection." If there are no images available for viewing under the "Current Selection" menu item, double check the Windows directory for the CONVO16.IMG or CONVO32.IMG file. If it's not there, reinstall KPT Convolver.


Deep Math With Ben Weiss

Forwarded Message:

Date: Sun, Nov 6, 1994 5:04 AM EST

From: KPT Ben

Subj: Convolver Technical Perspective

To: Kai, KPT Phil, KPT Craig

Posted on: America Online (using MAC 2.1)

Hey guys, just thought I'd write down some technical notes on Convolver for posterity...

"Convolution," in the imaging world, is closely tied to the general concept of image enhancement; that is, the extraction of some particular type of information from an original pixel-based image. This information may be fine detail, or edges, or anything in between; convolution is a technique which enhances these particular properties of an image, to the point where they become plainly visible to the eye.

Most imaging software out in the marketplace treats a digitized image as if it had only three basic properties: red, green, and blue. Performing convolution on an image's basic colors can yield a variety of useful effects, including brightness and contrast control, hue/saturation and color correction, and the ability to add a particular tint to the image. But no amount of convolution based solely on color properties could, for instance, blur an image vertically while bringing out its horizontal edges.

KPT Convolver improves on this approach by extracting information from the image beyond simply red, green, and blue. In addition to a simple color, a pixel as treated by Convolver implicitly contains many properties: sharpness, edge direction, and edge strength, to name a few. Very few existing software packages take full advantage of this information; the basic Sharpen filter is a one-shot special-case convolution filter which briefly pokes into this rich, hidden space of visual information. It is the equivalent of having a color-correction program that only allowed you to add a medium red tint to an image; nothing more. The vast space of enhancement possibilities goes unexplored.

Imagine for a moment the ultimate color-correction tool. It would let you change and fine-tune any conceivable property of your image: hue, saturation, brightness, contrast, and tint, among others, and in such a way that you had precise control over every adjustment.

KPT Convolver, in this sense, is the ultimate detail-correction tool. All the parameters controlling different types of detail: embossing, sharpness, edge detection, are laid open on the table, to be tinkered with to your heart's content. Sharpen some edges. Smooth out some rough spots. Add some 3D side lighting. Enhance blurry photographs. Plus, in Convolver you have full control over all the previously mentioned color correction tools in realtime.

Tech Stuff

Standard color-correction techniques work by taking each component of a pixel (red, say) and comparing it with the other adjacent components in color space (green and blue) to produce the final result. KPT Convolver's detail-correction techniques work in a similar way, but instead of comparing adjacent components in color space, Convolver compares adjacent components in physical image space; pixels that are spatially close to one another as viewed on your 2-D screen. The mathematical engine of Convolver looks at a pixel along with its 8 immediate neighbors, forming a 3x3 grid, or kernel. In a color image, separate RGB values for each pixel are also brought into the algorithm, yielding a 3x3x3 overall kernel, encompassing two dimensions of space and one of color. This construction yields a huge overall space of image-processing effects: standard sharpen, blur, find edges, and embossing filters are mere points in the resultant 27-dimensional "effect space."

Now, to the computer, crunching through image data requires that all 27 of these numbers be brought out explicitly in the computation. It would be a simple task indeed to merely present the user with 27 boxes or sliders, and let them fill in the numbers in one by one. Of course, nobody would have the slightest idea which set of numbers yields what effect, just as nobody could draw a megabyte-sized Mona Lisa portrait by typing in hexadecimal numbers one by one into a data file. Computers may work that way, but most humans find it necessary to be shielded from all that.

So another mathematical engine ended up being built into Convolver: this one not to do the basic convolution number-crunching, but rather to perform an "effect-space conversion," in spirit not unlike an English>Japanese translation, towards the goal of making this vast "effect space" accessible to the average user. An "English>Computerese" translation, if you will.

Surprisingly, a high degree of difficulty lay in establishing, in this context, what "English" was. What common words or parameters do we use to describe basic image-processing effects? Obviously not the same 27 that the computer does. After much research, we established a basic list:

Blur/Sharpen

Edge Amount

Edge Angle

Relief Amount

Relief Angle

Hue Rotation

Saturation/Desaturation

Lighten/Darken

Contrast/Fade

Tint

Each of these is a familiar term to persons in the graphics industry, and comes close to the way we think about images: "Let's add a little saturation, make it lighter, more contrast, get rid of that green tint, a tad sharper..." etc. We never think "Let's just multiply kernel element [2,3,1] by 1.2574, that should fix it."

But the computer does think that way, and we have to cater to its needs. The effect-space conversion engine inside Convolver has the ability to take any combination of the above parameters, and translate them into the 27-dimensional kernel space used by the computer. After this conversion, Convolver's effect-processing engine applies your changes to the selected part of the image.

Even Techier Stuff

The effects of sharpness, relief, and edge-detection have a (relatively!) simple mathematical foundation in the field of partial differential equations. Simply put, if the image is taken as a 2D mathematical function:

Sharpness is indicated by the total derivative at a point.

Relief is indicated by the first directional derivative at a point, in a particular direction.

Edge-strength is indicated by the second directional derivative at a point, in a particular direction.

Blurring is obtained by altering the equation to minimize the total derivative at a point (to "smooth out" the image function), sharpening is obtained by maximizing the total derivative. Likewise, relief and edge strength can be enhanced or minimized to any degree.

The 27-element kernel represents an affine transformation of the image through effect-space, mathematically similar to the familiar task of skewing, rotating, scaling and repositioning an image, except Convolver works on color and effects rather than spatial positioning.

Even More Techier Stuff

...can be found in upper-level courses at Harvey Mudd College. I strongly discourage this; take a look what it's done to me.

Ben


Acknowledgments

This Explorer's Guide was executed by Kai Krause and Los Bros. Clevenger, with an amazing contribution from Ben Weiss.

Help files by Hessan Tchaitchian.

Installer by Josh Bates.

Lovely Art by Susan Kitchens.

Cover art and packaging by Bill and BJ Niffenegger.

Editorial/production assistance: John Wilczak, Mike Fuentes, Susan Kitchens, Tommy Ikuta, Lars Olson, Nancy Fry, Paul Fritz, Rob Sonner, Julie Sigwart, Dan Protchazca, Josh Bates, and Hessan Tchaitchian.

A big thanks to Mark Siegel, Victor von Salza, and all our incredible beta testers.

KPT Convolver is the brainchild of Kai Krause, expressed by Ben Weiss, brought into this world by Larry Coopet, Andrea Pessino, and midwifed by Phil Clevenger.

Extra special warm fuzzy kissy things to all our registered users, who have supported our development efforts thus far. This one's for you.

"...There may be those who disapprove of something so unorthodox, so very different. I suppose we could make a version with just pull downs and heirarchicals and radio buttons and sliders and 32x32 icons within the system colors aliased 1-bit fonts and proper cancel and OK buttons...

Maybe we should...

Nahhhh. Lifes too short.

I hope you enjoy working and playing with Convolver. Everyone will find the detail they deserve ;)

Greets from the entire team at HSC Software."

Kai

KPT Convolver is published exclusively by:

HSC Software Corp.

6303 Carpinteria Avenue

Carpinteria, CA 93013

(805) 566-6200 phone

(805) 566-6385 fax

©1994 HSC Software Corp. All rights reserved.

HSC is a trademark, and Convolver, Kai's Power Tools, KPT, and HSC are registered trademarks of HSC Software Corp.

All other product names mentioned in this file are used for identification purposes only and may be trademarks or registered trademarks of their respective companies. Registered and unregistered trademarks used herein are the exclusive property of their respective owners. HSC Software Corp. makes no claim to any such marks, nor willingly or knowingly misused or misapplied such marks.